<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>侦听器</title>
	</head>
	<body>
		<div id="app">
			<!-- 1.监听器 如果需要自动触发则使用监听器-->
			姓:<input type="text" name="firstName" v-model.lazy="firstName" />
			名:<input type="text" name="lastName" v-model.lazy="lastName"/>
			<button @click="fullNameBtn">全名</button>
			全名:  {{fullName}}
			<!-- 过滤器 -->
			用户名:<input type="text" v-model="userName"/>
			全转大写:{{userName | upper}}
			全转小写:{{userName| lower}}
		</div>
		<script src="../js/vue.js">	
		</script>
		<script type="text/javascript">
			// 定义过滤器 数据需要格式化时使用
			Vue.filter("upper",function(val){
			 return	val.toUpperCase()
			})
			// 箭头函数的用法 没有参数的时候不要省略括号("lower",()=>)
			Vue.filter("lower",(val)=>{
				return val.toLowerCase()
			})
			const app = new Vue({
				el:"#app",
				data:{
					firstName:"",
					lastName:"",
					fullName:"",
					userName:""
				},
				methods:{
					fullNameBtn(){
						this.fullName =this.firstName+this.lastName
					}
				},
				// 定义监听器
				watch: {
					// 当数据发生变化时,传递数据到监听器中
					firstName(val){
						console.log("获取数据:"+val)
						this.fullName=val+this.lastName
					},
					lastName(val){
						this.fullName=this.firstName+val
					}
				}
				
			})
		</script>
	</body>
</html>
